<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // var num = 10;
        // // 基本数据类型的复制, 是可以将值直接复制一份给一个新的变量
        // var num1 = num;
        // num1 = 100;
        // console.log(num1); //100
        // console.log(num); //10

        // 复杂数据类型是存储在堆中的 赋值的变量的是一个地址(指向)
        // 基本数据类型是存储在栈中的 赋值给变量的是值本身
        
        // 复杂数据类型的复制,只是想地址复制了一份给新的变量 那么两个变量操作数据时操作的是同一个数据
        var arr = [12,23,34];
        var arr1 = arr;
        arr1[0] = "aaa";
        console.log(arr1); //["aaa",23,34]
        console.log(arr); // ["aaa",23,24]
        // var arr2 = [];
        // for(var i = 0;i< arr.length;i++){
        //     arr2.push(arr[i]);
        // }
        // arr2[0] = "aaa";
        // console.log(arr2);
        // console.log(arr); 


        var obj = {
            name:"lili",
            age:18,
        }
        // var obj2 = {};
        // for(var key in obj){
        //     obj2[key] = obj[key]
        // }
        // obj2.name = "nana";
        // console.log(obj2);
        // console.log(obj);

        // Object.assign({},obj1,obj2,...)
        // var obj2 = Object.assign({},obj);
        //  obj2.name = "nana";
        // console.log(obj2);
        // console.log(obj);


        var data = [{
            title:"标题1",
            list:["aaa","bbb","ccc"],
            author:{
                name:"lili"
            }
        },{
            title:"标题2",
            list:["a","b","c"],
            author:{
                name:"nana"
            }
        }]


        // 将数据转换哼json字符串
        var str = JSON.stringify(data);
        console.log(str);
        // 将数据转换成json对象   json对象与对象的使用是一样的 区别是看起来json对象的属性名也是字符串
        var data3 = JSON.parse(str);
        console.log(data3);





        // var data2 = [];
        // for(var i = 0;i< data.length;i++){
        //     // data2.push(data[i]);
        //     var o = {};
        //     for(var key in data[i]){
        //         // key  title  list  author
        //         // o[key] = data[i][key];
        //         // console.log(typeof data[i][key]);
        //         if(typeof data[i][key] === "object"){
        //             var xin = data[i][key] instanceof Array ? [] : {};
        //             for(var key1 in data[i][key]){
        //                 xin[key1] = data[i][key][key1]
        //             }
        //             o[key] = xin;
        //         }else{
        //             o[key] = data[i][key];
        //         }

        //     }
        //     data2.push(o);
        // }
        // data2[0].title = "哎哎哎"
        // console.log(data2);
        // console.log(data);

        // data2[0].list[0] = "啊啊啊"
        // console.log(data2);
        // console.log(data);


    </script>
</body>
</html>